package com.jph.simple;
import android.net.Uri;
import android.os.Bundle;
import android.os.Environment;
import com.jph.takephoto.app.TakePhoto;
import com.jph.takephoto.app.TakePhotoActivity;
import com.jph.takephoto.model.TResult;
import java.io.File;


/**
 * - 支持通过相机拍照获取图片
 * - 支持从相册选择图片
 * - 支持从文件选择图片
 * - 支持多图选择
 * - 支持批量图片裁切
 * - 支持批量图片压缩
 * - 支持对图片进行压缩
 * - 支持对图片进行裁剪
 * - 支持对裁剪及压缩参数自定义
 * - 提供自带裁剪工具(可选)
 * - 支持智能选取及裁剪异常处理
 * - 支持因拍照Activity被回收后的自动恢复
 * Author: crazycodeboy
 * Date: 2016/9/21 0007 20:10
 * Version:3.0.0
 * 技术博文：http://www.cboy.me
 * GitHub:https://github.com/crazycodeboy
 * Eamil:crazycodeboy@gmail.com
 */
public class SimpleActivity extends TakePhotoActivity {
    private int selectWhat;
    private SelectPhotoListener takeSelectPhotoListener;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
    }


    public void onClick(String view, int what, SelectPhotoListener selectPhotoListener) {
        selectWhat = what;
        takeSelectPhotoListener = selectPhotoListener;
        onClick(view, getTakePhoto());
    }
    public void onClick(String view, TakePhoto takePhoto) {
        File file = new File(Environment.getExternalStorageDirectory(), "/temp/" + System.currentTimeMillis() + ".jpg");
        if (!file.getParentFile().exists()) file.getParentFile().mkdirs();
        Uri imageUri = Uri.fromFile(file);
        switch (view) {
            case "相册":
                //每次选择图片的数量
                int limit = Integer.parseInt("10");
                if (limit > 1) {
                    takePhoto.onPickMultiple(limit);
                    return;
                }
                takePhoto.onPickFromGallery();
                break;
            case "拍照":
                takePhoto.onPickFromCapture(imageUri);
                break;
            default:
                break;
        }
    }
    @Override
    public void takeCancel() {
        super.takeCancel();
    }

    @Override
    public void takeFail(TResult result, String msg) {
        super.takeFail(result, msg);
    }

    @Override
    public void takeSuccess(TResult result) {
        super.takeSuccess(result);
        takeSelectPhotoListener.handlerResult(result, selectWhat);
    }


    //进行图片压缩

    //进行图片裁剪

    //裁剪成圆形图片

    //裁剪成方形图片


}
